test(runtime): pin array expandos across growth - #9579
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (4)
Included review availability: Your plan provides up to 8 included reviews per hour; 4 remain after this review. 📝 WalkthroughWalkthroughThe change adds runtime and TypeScript regression coverage for named properties on arrays after indexed writes grow their backing allocation. It also updates the related ownership comment and adds a changelog entry. ChangesArray named-property preservation
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change adds coverage and documentation for preserving named array properties through array growth without changing runtime behavior. The regression coverage protects property access, enumeration, and JSON behavior, and no merge-blocking risk remains. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Full details: Description checkExplanation The description provides a clear summary, implementation context, related issue, detailed test commands and results, and confirms that no version bump is included. It omits some template headings and checklist items, but it remains mostly complete. Full details: Linked Issues checkExplanation The changes address issue Full details: Docstring CoverageExplanation Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 3 functions across 3 files. (1 skipped: 1 unsupported.) ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Landed via merge train #9581 (rebase-merge, authorship preserved). |
Summary
Context
The named assignment itself worked; the following indexed write grew the array and historically left its expando table under the old allocation address. The owner-transfer implementation landed on main in #9434 after this issue was opened, so this PR pins that behavior directly and closes the previously unlinked report.
Testing
cargo test -p perry-runtime growth_rekeys_named_property_owner -- --nocapturecargo test -p perry-runtime --quiet -- --test-threads=1(3,011 passed; 4 ignored)PERRY_SKIP_BUILD=1 ./run_parity_tests.sh --filter 9201(1/1 passed against Node 26.5.1)./scripts/pre-tag-check.sh --quickpython3 scripts/check_test_registration.pycargo fmt --all -- --checkgit diff --checkNo version bump is included.
Closes #9201
Summary by CodeRabbit
Bug Fixes
Tests